package com.csyf.manager.dao;

import com.csyf.manager.entity.SysRole;
import tk.mybatis.mapper.common.Mapper;

import java.util.List;
import java.util.Map;
import java.util.Set;

/**
 *
 * @Description: 角色Mapper
 *
 * @auther: casper
 * @date: 2018/11/19 11:16
 * @param:
 * @return:
 *
 */
public interface SysRoleMapper extends Mapper<SysRole> {

    int deleteByPrimaryKey(Long roleId);

    int insert(SysRole record);

    int insertSelective(SysRole record);

    SysRole selectByPrimaryKey(Long roleId);

    int updateByPrimaryKeySelective(SysRole record);

    int updateByPrimaryKey(SysRole record);

    /**
     * 根据用户id查询角色集合
     * @param userId
     * @return
     */
    Set<String> findRoleByUserId(Long userId);

    /**
     * 批量更新角色状态
     * @param params
     * @return
     */
    int updateStatusBatch(Map<String,Object> params);

    /**
     * 根据角色id更新角色
     * @param params
     * @return
     */
    int updateByRoleId(Map<String,Object> params);

    /**
     * 根据角色id查询角色
     * @param roleId
     * @return
     */
    SysRole findByRoleId(Long roleId);

    /**
     * 根据条件查询角色列表
     * @param sysRole
     * @return
     */
    List<SysRole> selectRoles(SysRole sysRole);
}